Guided purchasing via smartphone

ABSTRACT

Guiding purchasing via smartphone by, determining, via smartphone input of a user, the smartphone user&#39;s intent to purchase a given product. At least one sequence of tasks to purchase each of a plurality of products is determined. The determined intent to purchase the given product is associated with a determined sequence of tasks to purchase one of the products in the plurality of products. The smartphone user&#39;s current state in the associated sequence of tasks is determined. The smartphone user is notified, via the smartphone, of the next uncompleted task from the associated sequence of tasks based on the smartphone user&#39;s current state in the associated sequence of tasks.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.15/812,459, filed Nov. 14, 2017, which is a continuation of U.S.application Ser. No. 14/855,363, filed Sep. 15, 2015, the contents ofeach are incorporated by reference herein.

TECHNICAL FIELD

The present disclosure relates to guiding the online purchase of goodsand services (hereinafter “products”) via the limited user interface(“UI”) offered by a typical smartphone, and in the fragmentedinteractions characteristic of increasingly typical smartphone use.

BACKGROUND

Online shopping is a form of electronic commerce that allows consumersto buy products from sellers over the Internet-typically using a browseron the World Wide Web, but also via native shopping applications.Worldwide online shopping sales volume for 2012 exceeded a trilliondollars.

A smartphone is a mobile phone with an operating system that combinesfeatures of a personal computer and other features useful for mobile orhandheld use. Smartphones typically provide the functionality of a cellphone, such as personal digital assistant (PDA), a media player, acamera, and a Global Positioning System (GPS)-based navigation device.Most smartphones are equipped to access the Internet and have atouchscreen user interface. Some smartphones include mobile paymentfunctionality. In 2014, smartphone sales worldwide topped 1.2 billionunits. Several sources expect that search engine queries from mobiledevices, such as smartphones and tablet computers, will surpass searchengine queries from larger devices, such as laptops, and non-mobiledevices, such as desktop computers in the near future.

As smartphones and tablet computers have become an indispensable part ofthe life of many consumers, what used to be predictable daily sessionsonline, for example, at a desktop computer, have been supplemented, ifnot replaced, by fragmented interactions using smaller interfacesexisting on smartphones and smaller tablet computing devices. Many ofthese moments occur every day, for example, checking the time, texting aspouse, chatting with friends on social media. Relevant to the presenttechnology, some of these fragmented interactions, referred to by someas “micro moments,” are “I want to buy” moments.

SUMMARY

Embodiments of the technology disclosed herein provide systems, methods,and computer program products for guiding purchase activities via asmartphone. In such methods, the smartphone user's intent to purchase agiven product is determined via smartphone input of a user. At least onesequence of tasks to purchase each of a plurality of products isdetermined. The determined intent to purchase the given product isassociated with a determined sequence of tasks to purchase one of theproducts in the plurality of products. The smartphone user's currentstate in the associated sequence of tasks is determined. The smartphoneuser is notified, via the smartphone, of the next uncompleted task fromthe associated sequence of tasks based on the smartphone user's currentstate in the associated sequence of tasks.

In some embodiments, an indication that a task in the associatedsequence of tasks is complete is received via the smartphone. Thesmartphone user's current state in the associated sequence of tasks isupdated, and the smartphone user is notified, via the smartphone, of thenext uncompleted task from the associated sequence of tasks based on thesmartphone user's updated state in the associated sequence of tasks.

In some embodiments, advertising bids are received, each bid comprisingan advertisement, and each bid expressed as a function of 1) theadvertised product, and 2) a task in one or more determined sequences oftasks for purchasing the advertised product. In such embodiments, atleast one received advertising bid is selected based on 1) thesmartphone user's intent to purchase the advertised product, 2) thedetermined sequence of tasks for purchasing the advertised product, and3) the smartphone user's task state. In such embodiments, notifying thesmartphone user includes transmitting, to the user's smartphone fordisplay, the advertisement of the selected advertising bid.

These and other aspects, objects, features, and advantages of theexample embodiments will become apparent to those having ordinary skillin the art upon consideration of the following detailed description ofillustrated example embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram depicting a communications and processingarchitecture for guiding purchase activities using a smartphone, inaccordance with certain example embodiments.

FIG. 2 is a block diagram depicting guiding purchase activities using asmartphone, in accordance with certain example embodiments.

FIG. 3 is a diagram depicting a notional user interface for determiningguided purchasing intent using a smartphone, in accordance with certainexample embodiments.

FIG. 4 is a diagram depicting a notional user interface for determininga guided purchasing user's budget using a smartphone, in accordance withcertain example embodiments.

FIG. 5 is a diagram depicting a notional user interface forcommunicating determined tasks using a smartphone, in accordance withcertain example embodiments.

FIG. 6 is a diagram depicting a notional user interface for reminding auser of tasks using a smartphone, in accordance with certain exampleembodiments.

FIG. 7 is a block diagram depicting guiding purchase activities using asmartphone, in accordance with certain example embodiments.

FIG. 8 is a block diagram depicting guiding purchase activities using asmartphone in accordance with certain example embodiments.

FIG. 9 is a diagram depicting a computing machine and a module, inaccordance with certain example embodiments of the disclosed technology.

DETAILED DESCRIPTION OF THE EXAMPLE EMBODIMENTS

Technical impediments exist to consumers conducting online shopping on asmartphone. In 2014, the average new smartphone presented a diagonalscreen size of less than 5″—including the space available for akeyboard. With such a limited UI, entering long queries and conductingextensive research on a smartphone can be cumbersome for the consumer.Such a small user interface is not amenable to displaying rich results,for example search results responsive to broad queries. When combinedwith the growing fragmented nature of consumers' interaction withsmartphones, the technical challenge to presenting useful informationacross fragmented interactions through a relatively small UI can besubstantial.

Further, in such an environment, impediments exist to selling smartphonead opportunities to advertisers. The typical breadth of each query andthe increasingly fragmented nature of a typical consumer's interactionwith his or her smartphone makes it a challenge to identify relevantinformation to present to the relevant audience, and then to presentthat information via a limited UI.

Overview

Embodiments of the present technology can start with an expression ofintent to purchase on the part of a consumer, and guide the consumerthrough a sequence of tasks known to facilitate the purchase process ina fashion that accounts for both the fragmented nature of typical userinteraction with a smartphone and the limitations of the typicalsmartphone UI. Embodiments of the present technology also can leveragethe consumer's interaction with the purchase process to provide morefocused information on which advertisers can base bids for smartphoneadvertising opportunities.

By using and relying on the technology described herein, the limited UIspace of a smartphone can be used to display relevant information duringthe short time spans characteristic of fragmented smartphone use. Assuch, the systems and methods described herein may be employed toleverage micro moments over time. Further, even sporadic fragmentaryconsumer interaction through the smartphone's limited UI can be used toenable advertisers to focus advertisement bids on more relevantconsumers.

Turning now to the drawings, in which like numerals indicate like (butnot necessarily identical) elements throughout the figures, exampleembodiments are described in detail.

Example Architectures

FIG. 1 is a block diagram depicting a communications and processingarchitecture 100 for guiding purchasing via a smartphone, in accordancewith certain example embodiments. While some servers, systems, anddevices shown in the architecture are represented by one instance of theserver, system, or device, multiple instances of each can be used.Further, while certain aspects of operation of the present technologyare presented in examples related to FIG. 1 to facilitate enablement ofthe claimed invention, additional features of the present technology,also facilitating enablement of the claimed invention, are disclosedelsewhere herein.

As depicted in FIG. 1 , the architecture 100 includes network computingdevices 110, 120, and 130; each of which may be configured tocommunicate with one another via communications network 199. In someembodiments, a user associated with a device must install an applicationand/or make a feature selection to obtain the benefits of the technologydescribed herein.

Network 199 includes one or more wired or wireless telecommunicationsmeans by which network devices may exchange data. For example, thenetwork 199 may include one or more of a local area network (LAN), awide area network (WAN), an intranet, an Internet, a storage areanetwork (SAN), a personal area network (PAN), a metropolitan areanetwork (MAN), a wireless local area network (WLAN), a virtual privatenetwork (VPN), a cellular or other mobile communication network, aBLUETOOTH® wireless technology connection, a near field communication(NFC) connection, any combination thereof, and any other appropriatearchitecture or system that facilitates the communication of signals,data, and/or messages. Throughout the discussion of example embodiments,it should be understood that the terms “data” and “information” are usedinterchangeably herein to refer to text, images, audio, video, or anyother form of information that can exist in a computer-basedenvironment.

Each network device 110, 120, and 130 can include a communication modulecapable of transmitting and receiving data over the network 199. Forexample, each network device 120 and 130 can include a server, a desktopcomputer, a laptop computer, a tablet computer, a television with one ormore processors embedded therein and/or coupled thereto, a smart phone,a handheld computer, a personal digital assistant (PDA), or any otherwired or wireless processor-driven device. Network device 110 is asmartphone. In the example embodiment depicted in FIG. 1 , a smartphoneuser may operate smartphone 110, a guided purchasing server operator mayoperate guided purchasing server 120, and an advertiser may operateadvertiser system 130.

In example embodiments, the network devices, and any other computingmachines associated with the technology presented herein, may be anytype of computing machine such as, but not limited to, those discussedin more detail with respect to FIG. 5 . Furthermore, any modulesassociated with any of these computing machines, such as modulesdescribed herein or any other modules (scripts, web content, software,firmware, or hardware) associated with the technology presented hereinmay by any of the modules discussed in more detail with respect to FIG.5 . The computing machines discussed herein may communicate with oneanother as well as other computing machines or communication systemsover one or more networks, such as communications network 199. Thecommunications network 199 may include any type of data orcommunications network, including any of the network technologydiscussed with respect to FIG. 5 .

The network connections illustrated are example and other means ofestablishing a communications link between the computers and devices canbe used. Moreover, those having ordinary skill in the art having thebenefit of the present disclosure will appreciate that the networkdevices illustrated in FIG. 1 may have any of several other suitablecomputer system configurations.

Example Processes

The example methods illustrated in figures are described hereinafterwith respect to the components of the example communications andprocessing architecture 100. The example methods can also be performedwith other systems and in other environments. The operations describedwith respect to any of the figures can be implemented as executable codestored on a computer or machine readable non-transitory tangible storagemedium (e.g., floppy disk, hard disk, ROM, EEPROM, nonvolatile RAM,CD-ROM, etc.) that are completed based on execution of the code by aprocessor circuit implemented using one or more integrated circuits. Theoperations described herein also can be implemented as executable logicthat is encoded in one or more non-transitory tangible media forexecution (e.g., programmable logic arrays or devices, fieldprogrammable gate arrays, programmable array logic, application specificintegrated circuits, etc.).

Referring to FIG. 2 , a block flow diagram depicting methods 200 forguiding purchase activities using a smartphone, in accordance withcertain example embodiments, is shown. In such methods, one or morecomputing devices can determine a smartphone user's intent to purchase agiven product via the user's smartphone-Block 210. Consider, as acontinuing example, a user explicitly expressing intent to purchase acamera via the user's smartphone 110 to the guided purchasing server120. FIG. 3 is a diagram depicting a notional user interface fordetermining guided purchasing intent using smartphone, in accordancewith the continuing example.

In some embodiments of the present technology, a user's intent can bedetermined in other fashions, for example, 1) by the guided purchasingserver 120 querying the user, via the user's smartphone 110, afterobserving the user's interest in social media pages featuring a product,or 2) by the guided purchasing server 120 receiving selection of an“intent to purchase” (or similarly labeled) radio button via the UI ofthe smartphone 110.

One or more computing devices can determine at least one sequence oftasks to purchase each of a plurality of products-Block 220. Forexample, user search logs/task logs can be examined to identify at leastone sequence of tasks that go into purchasing each of a wide variety ofproducts. A guided purchasing server 120, using a machine learningalgorithm to interpret user browser history across a population ofusers, can show that online camera purchasers typically engage in one ofseveral task sequences. For example, many online camera purchaserschoose the type of camera (for example digital single lens reflex(DSLR), digital point-and-shoot, film SLR, instant film), choose camerafeatures (for example, film speed, zoom, and other features that maydepend on camera type), and choose a merchant. While these tasks can beperformed in most any order, and can be performed iteratively, themachine learning algorithm can use information such as post-purchaseconsumer satisfaction with the purchase process as a way to derive arecommended order. In some embodiments, the guided purchasing server 120can determine tasks that a typical user can be expected to complete in ashort amount of time in the limited interface typical of a smartphone.

In the continuing example, the guided purchasing server 120 determines aplurality of task sequences for buying a camera well before the user'sintent to by a camera is expressed via the user's smartphone 110. One ofthose sequences (hereinafter “S1”) is as follows: choose a camera typefrom among {DSLR, SLR, instant film, digital point-and-shoot}, choosecamera features of the chosen camera type, choose at least one cameramodel from among the cameras of the chosen type having the chosenfeatures, and choose a merchant carrying a camera model of the chosentype having the chosen features.

In further examples, human operators can curate task identification andsequencing. In some embodiments, rich task sequences including at leastone conditional task conditioned on at least one of user input and usertask state can be determined.

The one or more computing devices can associate the determined intent topurchase the given product with a determined sequence of tasks topurchase one of the products in the plurality of products-Block 230. Inthe continuing example, the guided purchasing server 120 associates theuser's intent to purchase a camera, as determined via the user'ssmartphone 110, with the sequence S1.

In some embodiments, association of the user's intent to purchase agiven product with a determined task sequence can depend on the resultsof interactive feedback between the present technology and the user. Forexample, the guided purchasing server 120 can query the user, via theuser's smartphone 110, regarding a purchase budget, as shown in thenotional user interface 400 of FIG. 4 . The purchase budget can then beused to determine one task sequence, from among a plurality of tasksequences based on the user's response to the budget query. FIG. 5 is adiagram depicting a notional user interface 500 for communicatingdetermined tasks using a smartphone, in accordance with certain exampleembodiments.

In some embodiments, the intent to purchase is characterized by adeadline. In such embodiments, selection of a task sequence is based onthe deadline, for example, only task sequences that can reasonably becompleted by the deadline are considered for association with the intentto purchase. In some embodiments where intent to purchase ischaracterized by a deadline, all task sequences are considered and thetime for each task is proportionally fitted to the deadline. Forexample, each task in the associated sequence of tasks can becharacterized by a time allocation as a percentage of the overallsequence. In such embodiments, notifying the smartphone user of the nextuncompleted task includes notifying the user of a deadline to completethe next uncompleted task as a function of the percentage of time alongthe critical path of the sequence of tasks allocated to the nextuncompleted task. In some embodiments, the guided purchasing server 120receives schedule objectives, such as final and interim deadlines, fromthe user, via smartphone 110.

The one or more computing devices can determine the smartphone user'scurrent state in the associated sequence of tasks-Block 240. In thecontinuing example, the guided purchasing server 120 determines that theuser, while expressing intent to purchase a camera, has not expressed achoice regarding camera type, features, model, and merchant-leaving eachtask in S1 uncompleted.

In a different example, if the user had expressed intent to purchase aDSLR camera, the guided purchasing server 120 would still select the S1sequence of tasks, but would determine the user's state to includehaving completed the first task in the S1 sequence of tasks. In someembodiments, the user's state in the associated sequence of tasks caninclude other context characteristics of both the user and the user'ssmartphone 110. For example, the smartphone 110 location can be anelement of the user's task state, influencing the list of nearbymerchants available to present to the user.

The one or more computing devices can notify the smartphone user of thenext uncompleted task from the associated sequence of tasks based on thesmartphone user's current state in the associated sequence oftasks-Block 250. In the continuing example, the guided purchasing server120 sends a Short Message Service (SMS) text message to the user'ssmartphone 110 to choose a camera type from among {DSLR, SLR, instantfilm, and digital point-and-shoot}. FIG. 6 is a diagram depicting anotional user interface for reminding a user of tasks using asmartphone, in accordance with certain example embodiments.

In other examples, more than one task can be the next uncompleted taskin the associated sequence of tasks, and the guided purchasing server120 can notify the user of one or both of the next uncompleted tasks. Insome embodiments, the guided purchasing server 120 can send one or moresubsequent notifications to the user's smartphone 110 if the guidedpurchasing server 120 has not received an indication of task completion.Such notifications can be periodic, regular, or combined across aplurality of concurrent purchasing objectives. In some embodiments, theguided purchasing server 120 also can provide information associatedwith completing the task (for example, an explanation of the meaning ofeach camera type along with advantages and disadvantages of each type).The guided information server 120 can provide such information eitherdirectly, or through a hyperlink to its own content or to third partycontent.

Referring to FIG. 3 , and continuing to refer to prior figures forcontext, a block diagram 300 depicting methods for guiding purchaseactivities using a smartphone, in accordance with certain exampleembodiments is shown. In such embodiments, Block 210-250 can beperformed as described in connection with FIG. 2 . In such embodiments,the one or more computing devices receive an indication that a task inthe associated sequence of tasks is complete-Block 360. In thecontinuing example, the guided purchasing server 120 receives anindication from the user's smartphone 110 that the user has selected theDSLR camera type.

The one or more computing devices can update the smartphone user'scurrent state in the associated sequence of tasks-Block 370. In thecontinuing example, the guided purchasing server 120 can update thesmartphone user's status in S1 to reflect that the DSLR camera type hasbeen chosen.

If there are remaining uncompleted tasks (“Yes” path from Block 380),then the one or more computing devices determines the smartphone user'scurrent state in the associated sequence of tasks as described above(Block 240), and then notifies the smartphone user of the nextuncompleted task from the associated sequence of tasks, based on thesmartphone user's updated state in the associated sequence oftasks-Block 250. In the continuing example, the guided purchasing server120 determines that tasks remain in the S1 task sequence, determinesthat the user has yet to complete the “choose camera features” task, the“review camera accessories” task, and the “choose a merchant” tasks inS1. The guided purchasing server 120 then notifies the user, via theuser's smartphone 110, to “choose camera features,” which is the nexttask in S1.

In the continuing example, the guided purchasing server 120, incooperation with the user, via the smartphone 110, loops through each ofthe remaining tasks in S1, allowing the user to select camera featureset A for DSLR cameras, camera models Mod1 and Mod2 from among DSLRcameras having feature set A; and merchants MerchX and MerchY from amongmerchant carrying DSLR cameras of Mod1 and Mod2 with feature set A.

The guided purchasing server 120 then receives a selection of the Mod2camera for purchase from MerchY by the user via the user's smartphone110. In cooperation with MerchY's online sales portal, the guidedpurchasing server 120 allows the user to complete the purchase of Mod2camera from MerchY by the user via the user's smartphone 110.

Referring to FIG. 4 , and continuing to refer to prior figures forcontext, a block diagram 400 depicting methods for guiding purchaseactivities using a smartphone, in accordance with certain exampleembodiments is shown. In such embodiments, Block 210-Block 240 areperformed as described in connection with FIG. 2 . In such embodiments,one or more computing devices receive a plurality of advertisingbids-Block 460. Each bid includes an advertisement. Each bid can beexpressed as a function of the advertised product and a task in one ormore determined sequences of tasks to purchase the advertised product.

The one or more computing devices can select one or more advertisingbids based on the smartphone user's intent to purchase the advertisedproduct, the determined sequence of tasks for purchasing the advertisedproduct, and the smartphone user's task state-Block 470. In suchembodiments, notifying the user of the next uncompleted task from thesequence based on the user's current state in the sequence includespresenting the ad(s) of the selected ad bid(s)—Block 450.

In the continuing example, the guided purchasing server 120 receives thebids shown in TABLE 1 from an advertiser system 130. For example, MerchXmay submit an advertisement for the Instant Film Mod1 camera withfeature set IF-A that focuses on features for the features task, whilesubmitting a broader advertisement for Instant Film Mod1 camera for theProduct task.

The one or more computing devices select at least one receivedadvertising bid based on the smartphone user's intent to purchase theadvertised product, the smartphone user's task state, and the bidprice-Block 420. In such embodiments, notifying the smartphone usercomprises transmitting, by the one or more computing devices to theuser's smartphone for display, the advertisement of the selectedadvertising bid-Block 450.

TABLE 1 Product Intent Type Feature Set Model Merchant Camera InstantFilm IF-A Mod1 MerchX $0.54 $0.66 $0.80 $0.84 $0.94 Camera DLSR D-A Mod2MerchX $0.54 $0.65 $0.76 $0.84 $0.99 Camera SLR S-A Mod2S MerchX $0.54$0.65 $0.74 $0.85 $0.99 Camera DLSR D-A Mod2 MerchY $0.58 $0.63 $0.75$0.82 $0.95 Camera DLSR D-A Mod3 MerchY $0.58 $0.63 $0.77 $0.86 $0.96Electric Shaver Rotating heads ES-C Mod4 MerchY $0.59 $0.63 $0.76 $0.85$0.97 Camera DLSR D-B Mod2 MerchW $0.59 $0.68 $0.74 $0.88 $0.96

In the continuing example, the guided purchasing sever 120 determines,via the smartphone 110, the user's intent to purchase a camera product.The guided purchasing server 120 has previously determined a pluralityof sequences, among them S1, for guiding the purchase of a variety ofproducts, including cameras. The guided purchasing server associates S1with the user's intent to purchase a camera, and determines that theuser has not completed any of the tasks in S1. These portions of theprocess are described above in conjunction with Block 210-Block 240.

The guided purchasing server 120 then notifies the user, via smartphone110, to select a camera type, as described above in conjunction withBlock 250. The guided purchasing server 120 presents one advertisementfrom each of the top two bidders for the selected product. In this case,the guided purchasing server presents one advertisement from each ofMerchW and MerchY for cameras of various types, since MerchW ($0.59) andMerchY ($0.58) have bid the highest for placement of advertisements atthis stage of the task sequence for cameras. The guided purchasingserver 120 presents information on camera type selection, allowing auser to select, via the smartphone, a hyperlink for content explaininginstant film, DSLR, and SLR cameras. The user selects, via smartphone110, after following the links for content explaining the various cameratypes, the DSLR type camera. The guided purchasing server updates theuser's state to indicate that the first task in S1 has been completed.In the continuing example, each of 1) notification to select a cameratype, 2) presentation of each advertisement and the hyperlinks, 3)selection of each hyperlink, and 4) selection of the DSLR camera type,takes place during a separate micro moment, with the smartphone 110 orthe guided purchasing server 120 maintaining the user's state.

The guided purchasing server 120 then notifies the user, via smartphone110, to select a feature set. The guided purchasing server 120 presentsone advertisement from each of the top two bidders for feature sets ofDSLR type cameras. In this case, the guided purchasing server presentsone advertisement from each of MerchX and MerchW for DSLR camera featuresets, since MerchW ($0.68) and MerchX ($0.65) have bid the highest forplacement of advertisements at this stage of the task sequence for DSLRcameras. The guided purchasing server 120 presents information on camerafeature set selection, allowing a user to select, via the smartphone, ahyperlink for content explaining feature sets D-A and D-B. The userselects, via smartphone 110, after following the links for contentexplaining the various feature sets, the D-A feature set. The guidedpurchasing server 120 updates the user's state to indicate that thesecond task in S1 has been completed. In the continuing example, eachof 1) notification to select a feature set, 2) presentation of eachadvertisement and the hyperlinks, 3) selection of each hyperlink, and 4)selection of the D-A feature set, takes place during a separate micromoment, with the smartphone 110 or the guided purchasing server 120maintaining the user's state.

The guided purchasing server 120 then notifies the user, via smartphone110, to select a camera model. The guided purchasing server 120 presentsone advertisement from the top two bidders for a DSLR camera having theD-A feature set. In this case, the guided purchasing server presents oneadvertisement from each of MerchX and MerchY for DSLR camera featuresets, since MerchX ($0.76) and MerchY ($0.77) have bid the highest forplacement of advertisements at this stage of the task sequence for DSLRcameras with feature set D-A. The guided purchasing server 120 presentsinformation on camera model selection, allowing a user to select, viathe smartphone, a hyperlink for content explaining models Mod2 and Mod3.The user selects, via smartphone 110, after following the links forcontent explaining the various feature sets, model Mod2. The guidedpurchasing server 120 updates the users state to indicate that the thirdtask in S1 has been completed. In the continuing example, each of 1)notification to select a model, 2) presentation of each advertisementand the hyperlinks, 3) selection of each hyperlink, and 4) selection ofthe Mod2 model, takes place during a separate micro moment, with thesmartphone 110 or the guided purchasing server 120 maintaining the usersstate.

The guided purchasing server 120 then notifies the user, via smartphone110, to select a merchant. The guided purchasing server 120 presents oneadvertisement from the top bidder for a Mod2 DSLR camera having the D-Afeature set. In this case, the guided purchasing server presents oneadvertisement from MerchX, since MerchX ($0.84) has bid the highest forplacement of advertisements at this stage of the task sequence formerchants of Mod2 DSLR cameras with feature set D-A. The guidedpurchasing server 120 presents information on merchant selection,allowing a user to select, via the smartphone, a hyperlink for contentexplaining MerchX and MerchY. The user selects, via smartphone 110,after following the links for content explaining the various merchants,merchant MerchY. The guided purchasing server 120 updates the user'sstate to indicate that the fourth task in S1 has been completed. In thecontinuing example, each of 1) notification to select a merchant, 2)presentation of each advertisement and the hyperlinks, 3) selection ofeach hyperlink, and 4) selection of MerchY, takes place during aseparate micro moment, with the smartphone 110 or the guided purchasingserver 120 maintaining the user's state.

In some embodiments, the guided purchasing server 120 selects at leastone advertisement to present to the user, via the smartphone 110, afterthe user makes her final selection. Such an advertisement can be a “beatthat offer” advertisement, for example, the guided purchasing server 120can select one advertisement based on bid price to present to the uservia smartphone 110. In this case, MerchW's post selection bid ($0.99) isthe highest, and the guided purchasing server 120 presents MerchW's postselection advertisement to the user via smartphone 100.

While the guided purchasing server 120 has been described herein aspresenting advertisements bounded by the user's selections forsimplicity of explanation, the guided purchasing server 120 can presentdata for those products that meet the current user selections, andpresent advertisements for a broader, or merely different, range ofproducts. For example, a user interested in a Mod2 DSLR camera may fitthe intended audience for an advertisement from a nearby photographyschool. While a list of Mod2 DSLR cameras available for sale may bepresented to the user, an advertisement for the photography school maybe selected by the guided purchasing server 120 for presentation to theuser via the smartphone 110.

In some embodiments, the guided purchasing server 120 can chargeadvertisers based on user interaction with ad content and interactionwith notifications. In addition, the guided purchasing server canreceive an advertiser bid on, and award advertising opportunities basedon, the duration of each task, and the frequency with which thenotifications are sent to the user. In some embodiments, advertisers canbid to add tasks to a determined task sequence, and the guidedpurchasing server 120 can conduct an auction awarding added tasks to oneor more advertisers. In some embodiments, overall user value and valueto the guided purchasing server 120 operator are considered whenawarding advertising opportunities. In some embodiments, the advertiseris charged based on the action user takes on the content recommended byadvertiser and based on the decision user makes. For example, MerchX maybid for DSLR choice while MerchY may bid on Point and shoot as eachmerchant may have strengths in those areas. The merchants also can bidindividually on content they are sharing with users. If a user selectsany of the content, the advertiser is charged for that action and ifuser makes a choice to go with DSLR, all merchants that are bidding onthat choice can be charged. This can incentivize advertisers to bid highon early decisions where their strength lies.

Other Example Embodiments

FIG. 5 depicts a computing machine 2000 and a module 2050 in accordancewith certain example embodiments. The computing machine 2000 maycorrespond to any of the various computers, servers, mobile devices,embedded systems, or computing systems presented herein. The module 2050may comprise one or more hardware or software elements configured tofacilitate the computing machine 2000 in performing the various methodsand processing functions presented herein. The computing machine 2000may include various internal or attached components, for example, aprocessor 2010, system bus 2020, system memory 2030, storage media 2040,input/output interface 2060, and a network interface 2070 forcommunicating with a network 2080.

The computing machine 2000 may be implemented as a conventional computersystem, an embedded controller, a laptop, a server, a mobile device, asmartphone, a set-top box, a kiosk, a vehicular information system, onemore processors associated with a television, a customized machine, anyother hardware platform, or any combination or multiplicity thereof. Thecomputing machine 2000 may be a distributed system configured tofunction using multiple computing machines interconnected via a datanetwork or bus system.

The processor 2010 may be configured to execute code or instructions toperform the operations and functionality described herein, managerequest flow and address mappings, and to perform calculations andgenerate commands. The processor 2010 may be configured to monitor andcontrol the operation of the components in the computing machine 2000.The processor 2010 may be a general purpose processor, a processor core,a multiprocessor, a reconfigurable processor, a microcontroller, adigital signal processor (DSP), an application specific integratedcircuit (ASIC), a graphics processing unit (GPU), a field programmablegate array (FPGA), a programmable logic device (PLD), a controller, astate machine, gated logic, discrete hardware components, any otherprocessing unit, or any combination or multiplicity thereof. Theprocessor 2010 may be a single processing unit, multiple processingunits, a single processing core, multiple processing cores, specialpurpose processing cores, co-processors, or any combination thereof.According to certain embodiments, the processor 2010 along with othercomponents of the computing machine 2000 may be a virtualized computingmachine executing within one or more other computing machines.

The system memory 2030 may include non-volatile memories, for example,read-only memory (ROM), programmable read-only memory (PROM), erasableprogrammable read-only memory (EPROM), flash memory, or any other devicecapable of storing program instructions or data with or without appliedpower. The system memory 2030 may also include volatile memories, forexample, random access memory (RAM), static random access memory (SRAM),dynamic random access memory (DRAM), and synchronous dynamic randomaccess memory (SDRAM). Other types of RAM also may be used to implementthe system memory 2030. The system memory 2030 may be implemented usinga single memory module or multiple memory modules. While the systemmemory 2030 is depicted as being part of the computing machine 2000, oneskilled in the art will recognize that the system memory 2030 may beseparate from the computing machine 2000 without departing from thescope of the subject technology. It should also be appreciated that thesystem memory 2030 may include, or operate in conjunction with, anon-volatile storage device, for example, the storage media 2040.

The storage media 2040 may include a hard disk, a floppy disk, a compactdisc read only memory (CD-ROM), a digital versatile disc (DVD), aBlu-ray disc, a magnetic tape, a flash memory, other non-volatile memorydevice, a solid state drive (SSD), any magnetic storage device, anyoptical storage device, any electrical storage device, any semiconductorstorage device, any physical-based storage device, any other datastorage device, or any combination or multiplicity thereof. The storagemedia 2040 may store one or more operating systems, application programsand program modules, for example, module 2050, data, or any otherinformation. The storage media 2040 may be part of, or connected to, thecomputing machine 2000. The storage media 2040 may also be part of oneor more other computing machines that are in communication with thecomputing machine 2000, for example, servers, database servers, cloudstorage, network attached storage, and so forth.

The module 2050 may comprise one or more hardware or software elementsconfigured to facilitate the computing machine 2000 with performing thevarious methods and processing functions presented herein. The module2050 may include one or more of instructions stored as software orfirmware in association with the system memory 2030, the storage media2040, or both. The storage media 2040 may therefore represent examplesof machine or computer readable media on which instructions or code maybe stored for execution by the processor 2010. Machine or computerreadable media may generally refer to any medium or media used toprovide instructions to the processor 2010. Such machine or computerreadable media associated with the module 2050 may comprise a computersoftware product. It should be appreciated that a computer softwareproduct comprising the module 2050 may also be associated with one ormore processes or methods for delivering the module 2050 to thecomputing machine 2000 via the network 2080, any signal-bearing medium,or any other communication or delivery technology. The module 2050 mayalso comprise hardware circuits or information for configuring hardwarecircuits, for example, microcode or configuration information for anFPGA or other PLD.

The input/output (I/O) interface 2060 may be configured to couple to oneor more external devices, to receive data from the one or more externaldevices, and to send data to the one or more external devices. Suchexternal devices along with the various internal devices may also beknown as peripheral devices. The I/O interface 2060 may include bothelectrical and physical connections for operably coupling the variousperipheral devices to the computing machine 2000 or the processor 2010.The I/O interface 2060 may be configured to communicate data, addresses,and control signals between the peripheral devices, the computingmachine 2000, or the processor 2010. The I/O interface 2060 may beconfigured to implement any standard interface, for example, smallcomputer system interface (SCSI), serial-attached SCSI (SAS), fiberchannel, peripheral component interconnect (PCI), PCI express (PCIe),serial bus, parallel bus, advanced technology attached (ATA), serial ATA(SATA), universal serial bus (USB). Thunderbolt, FireWire, various videobuses, and the like. The I/O interface 2060 may be configured toimplement only one interface or bus technology. Alternatively, the I/Ointerface 2060 may be configured to implement multiple interfaces or bustechnologies. The I/O interface 2060 may be configured as part of, allof, or to operate in conjunction with, the system bus 2020. The I/Ointerface 2060 may include one or more buffers for bufferingtransmissions between one or more external devices, internal devices,the computing machine 2000, or the processor 2010.

The I/O interface 2060 may couple the computing machine 2000 to variousinput devices including mice, touch-screens, scanners, electronicdigitizers, sensors, receivers, touchpads, trackballs, cameras,microphones, keyboards, any other pointing devices, or any combinationsthereof. The I/O interface 2060 may couple the computing machine 2000 tovarious output devices including video displays, speakers, printers,projectors, tactile feedback devices, automation control, roboticcomponents, actuators, motors, fans, solenoids, valves, pumps,transmitters, signal emitters, lights, and so forth.

The computing machine 2000 may operate in a networked environment usinglogical connections through the network interface 2070 to one or moreother systems or computing machines across the network 2080. The network2080 may include wide area networks (WAN), local area networks (LAN),intranets, the Internet, wireless access networks, wired networks,mobile networks, telephone networks, optical networks, or combinationsthereof. The network 2080 may be packet switched, circuit switched, ofany topology, and may use any communication protocol. Communicationlinks within the network 2080 may involve various digital or an analogcommunication media, for example, fiber optic cables, free-space optics,waveguides, electrical conductors, wireless links, antennas,radio-frequency communications, and so forth.

The processor 2010 may be connected to the other elements of thecomputing machine 2000 or the various peripherals discussed hereinthrough the system bus 2020. It should be appreciated that the systembus 2020 may be within the processor 2010, outside the processor 2010,or both. According to some embodiments, any of the processor 2010, theother elements of the computing machine 2000, or the various peripheralsdiscussed herein may be integrated into a single device, for example, asystem on chip (SOC), system on package (SOP), or ASIC device.

In situations in which the technology discussed here collects personalinformation about users, or may make use of personal information, theusers may be provided with a opportunity to control whether programs orfeatures collect user information (e.g., information about a user'ssocial network, social actions or activities, profession, a user'spreferences, or a user's current location), or to control whether and/orhow to receive content from the content server that may be more relevantto the user. In addition, certain data may be treated in one or moreways before it is stored or used, so that personally identifiableinformation is removed. For example, a user's identity may be treated sothat no personally identifiable information can be determined for theuser, or a user's geographic location may be generalized where locationinformation is obtained (for example, to a city, ZIP code, or statelevel), so that a particular location of a user cannot be determined.Thus, the user may have control over how information is collected aboutthe user and used by a content server.

Embodiments may comprise a computer program that embodies the functionsdescribed and illustrated herein, wherein the computer program isimplemented in a computer system that comprises instructions stored in amachine-readable medium and a processor that executes the instructions.However, it should be apparent that there could be many different waysof implementing embodiments in computer programming, and the embodimentsshould not be construed as limited to any one set of computer programinstructions. Further, a skilled programmer would be able to write sucha computer program to implement an embodiment of the disclosedembodiments based on the appended flow charts and associated descriptionin the application text. Therefore, disclosure of a particular set ofprogram code instructions is not considered necessary for an adequateunderstanding of how to make and use embodiments. Further, those skilledin the art will appreciate that one or more aspects of embodimentsdescribed herein may be performed by hardware, software, or acombination thereof, as may be embodied in one or more computingsystems. Moreover, any reference to an act being performed by a computershould not be construed as being performed by a single computer as morethan one computer may perform the act.

The example embodiments described herein can be used with computerhardware and software that perform the methods and processing functionsdescribed previously. The systems, methods, and procedures describedherein can be embodied in a programmable computer, computer-executablesoftware, or digital circuitry. The software can be stored oncomputer-readable media. For example, computer-readable media caninclude a floppy disk, RAM, ROM, hard disk, removable media, flashmemory, memory stick, optical media, magneto-optical media, CD-ROM, etc.Digital circuitry can include integrated circuits, gate arrays, buildingblock logic, field programmable gate arrays (FPGA), etc.

The example systems, methods, and acts described in the embodimentspresented previously are illustrative, and, in alternative embodiments,certain acts can be performed in a different order, in parallel with oneanother, omitted entirely, and/or combined between different exampleembodiments, and/or certain additional acts can be performed, withoutdeparting from the scope and spirit of various embodiments. Accordingly,such alternative embodiments are included in the technology describedherein. For example, in embodiments described by FIG. 7 , decryption, bythe POS device 120, of received authorization information can occurbefore receiving verification information (v) from a user device 130.

Although specific embodiments have been described above in detail, thedescription is merely for purposes of illustration. It should beappreciated, therefore, that many aspects described above are notintended as required or essential elements unless explicitly statedotherwise. Modifications of, and equivalent components or actscorresponding to, the disclosed aspects of the example embodiments, inaddition to those described above, can be made by a person of ordinaryskill in the art, having the benefit of the present disclosure, withoutdeparting from the spirit and scope of embodiments defined in thefollowing claims, the scope of which is to be accorded the broadestinterpretation so as to encompass such modifications and equivalentstructures.

The invention claimed is:
 1. A computer-implemented method to guidepurchasing via a user device, comprising: determining, by a computingsystem, a sequence of tasks to purchase a product based on post-purchaseconsumer satisfaction information, wherein the sequence of taskscomprises at least a sequence of a first task, a second task, and a lasttask associated with the product; receiving, by the computing system, anindication that a user device has performed the first task associatedwith the product; receiving, by the computing system, an indication thatthe user device has performed the second task associated with theproduct after performing the first task associated with the product;based at least on receiving the indications that the user deviceperformed the first task and the second task, determining an intent topurchase the product; determining, by the computing system, that theuser device has not performed the last task associated with the product;and based at least on determining the intent to purchase the product andthat the user device has not performed the last task, presenting, by thecomputing system via the user device, a notification indicating the lasttask from the sequence of tasks along with instructions for completingthe last task.
 2. The computer-implemented method of claim 1, whereinthe first task comprises selection of a product type; and wherein thesecond task comprises selection of one or more features associated withthe product type.
 3. The computer-implemented method of claim 1, whereinthe sequence of tasks comprises at least a sequence of the first task,the second task, a third task, and the last task associated with theproduct, the method further comprising: receiving, by the computingsystem, an indication that the user device has performed the third taskassociated with the product after performing the second task associatedwith the product, wherein determining the intent to purchase the productis further based on receiving the indication that the user deviceperformed the third task.
 4. The computer-implemented method of claim 3,wherein the first task comprises selection of a product type; whereinthe second task comprises selection of one or more features associatedwith the product type; and wherein the third task comprises selection ofa product model of the selected product type having one or more featuresassociated with the product type.
 5. The computer-implemented method ofclaim 4, wherein the sequence of tasks further comprises a fourth taskassociated with the product, the method further comprising: receiving,by the computing system, an indication that the user device hasperformed the fourth task associated with the product after performingthe third task associated with the product, wherein the fourth taskcomprises selection of a merchant that carries the selected productmodel.
 6. The computer-implemented method of claim 1, furthercomprising: prior to determining that the user device has not performedthe last task associated with the product, identifying, by the computingsystem, a next uncompleted task from the sequence of tasks; andpresenting, by the computing system via the user device, a notificationindicating the next uncompleted task from the sequence of tasks alongwith instructions for completing the next uncompleted task.
 7. Thecomputer-implemented method of claim 1, further comprising: prior todetermining that the user device has not performed the last taskassociated with the product, identifying, by the computing system, twoor more uncompleted tasks from the sequence of tasks; and presenting, bythe computing system via the user device, a notification indicating thetwo or more uncompleted tasks from the sequence of tasks.
 8. Thecomputer-implemented method of claim 1, wherein the sequence of taskscomprises: (i) a task for choosing a product type, (ii) a task forchoosing one or more product features, (iii) a task for choosing aproduct model, and (iv) a task for choosing a merchant.
 9. Thecomputer-implemented method of claim 1, wherein each task in thesequence of tasks is identified by the computing system as tasks thatcan be completed via a mobile computing device within a specified periodof time.
 10. A computer program product, comprising: a non-transitorycomputer-readable storage medium having computer-executable programinstructions embodied thereon that when executed by one or moreprocessors cause the one or more processors to perform operationscomprising: determining, by a computing system, a sequence of tasks topurchase a product based on post-purchase consumer satisfactioninformation, wherein the sequence of tasks comprises at least a sequenceof a first task, a second task, and a last task associated with theproduct; receiving an indication that a user device has performed thefirst task associated with the product; receiving an indication that theuser device has performed the second task associated with the productafter performing the first task associated with the product; based atleast on receiving the indications that the user device performed thefirst task and the second task, determining an intent to purchase theproduct; determining that the user device has not performed the lasttask associated with the product; and based at least on determining theintent to purchase the product and that the user device has notperformed the last task, presenting, via the user device, a notificationindicating the last task from the sequence of tasks along withinstructions for completing the last task.
 11. The computer programproduct of claim 10, wherein the first task comprises selection of aproduct type; and wherein the second task comprises selection of one ormore features associated with the product type.
 12. The computer programproduct of claim 10, wherein the sequence of tasks comprises at least asequence of the first task, the second task, a third task, and the lasttask associated with the product, the operations further comprising:receiving, by the computing system, an indication that the user devicehas performed the third task associated with the product afterperforming the second task associated with the product, whereindetermining the intent to purchase the product is further based onreceiving the indication that the user device performed the third task.13. The computer program product of claim 12, wherein the first taskcomprises selection of a product type; wherein the second task comprisesselection of one or more features associated with the product type; andwherein the third task comprises selection of a product model of theselected product type having one or more features associated with theproduct type.
 14. The computer program product of claim 13, wherein thesequence of tasks further comprises a fourth task associated with theproduct, the operations further comprising: receiving, by the computingsystem, an indication that the user device has performed the fourth taskassociated with the product after performing the third task associatedwith the product, wherein the fourth task comprises selection of amerchant that carries the selected product model.
 15. The computerprogram product of claim 10, the operations further comprising: prior todetermining that the user device has not performed the last taskassociated with the product, identifying, by the computing system, anext uncompleted task from the sequence of tasks; and presenting, by thecomputing system via the user device, a notification indicating the nextuncompleted task from the sequence of tasks along with instructions forcompleting the next uncompleted task.
 16. The computer program productof claim 10, the operations further comprising: prior to determiningthat the user device has not performed the last task associated with theproduct, identifying, by the computing system, two or more uncompletedtasks from the sequence of tasks; and presenting, by the computingsystem via the user device, a notification indicating the two or moreuncompleted tasks from the sequence of tasks.
 17. The computer programproduct of claim 10, wherein the sequence of tasks comprises: (i) a taskfor choosing a product type, (ii) a task for choosing one or moreproduct features, (iii) a task for choosing a product model, and (iv) atask for choosing a merchant.
 18. The computer program product of claim10, wherein each task in the sequence of tasks is identified by thecomputing system as tasks that can be completed via a mobile computingdevice within a specified period of time.
 19. A computing systemcomprising: one or more processors; and computer readable storagecontaining instructions that, when executed by the one or moreprocessors, cause the computing system to perform operations comprising:determining a sequence of tasks to purchase a product based onpost-purchase consumer satisfaction information, wherein the sequence oftasks comprises at least a sequence of a first task, a second task, anda last task associated with the product; receiving an indication that auser device has performed the first task associated with the product;receiving an indication that the user device has performed the secondtask associated with the product after performing the first taskassociated with the product; based at least on receiving the indicationsthat the user device performed the first task and the second task,determining an intent to purchase the product; determining that the userdevice has not performed the last task associated with the product; andbased at least on determining the intent to purchase the product andthat the user device has not performed the last task, presenting, viathe user device, a notification indicating the last task from thesequence of tasks along with instructions for completing the last task.20. The computer system of claim 19, the operations further comprising:prior to determining that the user device has not performed the lasttask associated with the product, identifying, by the computing system,a next uncompleted task from the sequence of tasks; and presenting, bythe computing system via the user device, a notification indicating thenext uncompleted task from the sequence of tasks along with instructionsfor completing the next uncompleted task.